Light at the End of the Tunnel

Descrição:

The team has recovered the light sensor values from the target’s phone. We need you to use these values and identify the target’s 8-digit bank PIN. The target is a creature of habit so we’ve used that to our advantage. The sensor values are taken over a week during his commute on the subway. Same seat and roughly the same time so the conditions are good for your technique. There is good intelligence that the target typed in the PIN multiple times throughout the week during the commute. We also recovered the light sensor values from right before a phone call was made on the target’s phone, when the target was typing in a known phone number. However, these values were recorded under different lighting conditions than when the target was entering their 8-digit bank PIN. Note: The flag for this challenge is MCA{PIN}

Solução:

O arquivo fornecido pode ser visto no link. A primeira informação contida no arquivo é o número de telefone discado no celular do alvo (475–6968) e o período entre duas leituras do sensor (0,4s). Há também a informação de que a unidade dos dados é lux.

A primeira coisa que tentei fazer foi plotar os dados referentes ao telefone discado pois poderia dar alguma dica da solução. O gráfico obtido é o seguinte:

Nesse gráfico não foi possível notar um padrão específico que indicasse a solução, então resolvi plotar junto a esse gráfico os dados de segunda-feira:

Agora é possível perceber que ambos os gráficos possuem uma variação brusca nos valores medidos, o que dá o indício de que essa é a região do gráfico que deve ser analisada. Contudo, os dois gráficos não estão bem alinhados, então foi necessário fazer alguns ajustes. O gráfico já com as leituras ajustadas de todos os dias pode ser visto a seguir:

As leituras realizadas durante a semana são similares somente em uma certa região, indicando que todos os demais pontos representam informação desnecessária e confirmando a suspeita de onde deveríamos analisar. Dando um zoom apenas na região de interesse foi possível notar que há exatamente 7 pontos no gráfico representado em vermelho, o que representa o número discado (475–6968).

O gráfico a seguir possui a marcação indicando a leitura do sensor e o valor digitado no teclado naquele momento. Os discos em verde representam as leituras do sensor no momento em que cada número do PIN era digitado no teclado.

Nesse gráfico já é possível identificar alguns dígitos do PIN. Por exemplo, o último número só pode ser 8 já que possui valor próximo ao do último dígito do telefone. Seguindo esse raciocínio, foi possível identificar parte do PIN como sendo 58XY65X8.

Consegui determinar X e Y associando a leitura do sensor ao seu respectivo número no teclado do celular:

É possível notar que os valores obtidos pelo sensor crescem da direita para a esquerda e de baixo para cima. Sendo assim, os valores de X e Y (correspondendo a 402 e 377 no sensor) são, respectivamente, 1 e 2. O PIN é então 58126518.

Flag: MCA{58126518} write-up escrito por Bruxo